{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 60,
   "metadata": {},
   "outputs": [],
   "source": [
    "import pandas as pd             # data package\n",
    "import matplotlib.pyplot as plt # graphics \n",
    "import datetime as dt\n",
    "import numpy as np\n",
    "\n",
    "import requests, io             # internet and input tools  \n",
    "import zipfile as zf            # zip file tools \n",
    "import os  \n",
    "\n",
    "from numpy.polynomial.polynomial import polyfit\n",
    "\n",
    "import pyarrow as pa\n",
    "import pyarrow.parquet as pq\n",
    "\n",
    "import statsmodels.api as sm\n",
    "import statsmodels\n",
    "#import statsmodels.formula.api as smf\n",
    "from linearmodels.iv import IV2SLS\n",
    "from linearmodels.panel import PanelOLS\n",
    "\n",
    "\n",
    "\n",
    "import warnings\n",
    "warnings.filterwarnings(\"ignore\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Preface\n",
    "\n",
    "This notebook just explores the employment analysis part of the paper [\"The Consumption Response to Trade Shocks: Evidence from the US-China Trade War.\"](http://www.waugheconomics.com/uploads/2/2/5/6/22563786/waugh_consumption.pdf) . This is in Section 5. It mimics many parts of the auto analysis (visualization, tabular representations, and regression analysis). Below I also report the unweighted an weighted regression results.\n",
    "\n",
    "### Steup for analysis\n",
    "\n",
    "Just some basic things, bring in the data, make the transformations that we want, etc..."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 61,
   "metadata": {},
   "outputs": [],
   "source": [
    "fig_path = \"C:\\\\github\\\\expenditure_tradeshocks\\\\figures\""
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "This is the cell below to change if you want to toggle between all employment and only goods producing employment."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 62,
   "metadata": {},
   "outputs": [],
   "source": [
    "try: driver_flag\n",
    "    \n",
    "except NameError: driver_flag = False"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 63,
   "metadata": {},
   "outputs": [],
   "source": [
    "file_path = os.getcwd()\n",
    "\n",
    "#trade_county = pq.read_table(file_path + \"\\\\data\\\\trade_employment_goods.parquet\").to_pandas()\n",
    "\n",
    "trade_county = pq.read_table(file_path + \"\\\\data\\\\trade_employment_blssingle19.parquet\").to_pandas()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 64,
   "metadata": {},
   "outputs": [],
   "source": [
    "trade_county[\"time\"] = pd.to_datetime(trade_county.time)\n",
    "\n",
    "trade_county.set_index([\"area_fips\", \"time\"],inplace = True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 65,
   "metadata": {},
   "outputs": [],
   "source": [
    "trade_county[\"log_tariff\"] = np.log(1+.01*trade_county[\"tariff\"])\n",
    "\n",
    "trade_county[\"log_exp_total\"] = np.log(trade_county[\"total_exp_pc\"]).replace(-np.inf, np.nan)\n",
    "\n",
    "trade_county[\"log_exp_china\"] = np.log(trade_county[\"china_exp_pc\"]).replace(-np.inf, np.nan)\n",
    "\n",
    "emp_measure = \"emp_rtl\"\n",
    "# Here you specify the type of employment you want. emp_all is total employment. emp_gds = goods employment. \n",
    "\n",
    "trade_county[\"log_employment\"] = np.log(trade_county[emp_measure]).replace(-np.inf, np.nan)\n",
    "# Now given how the file is setup, we can select which type of employment.\n",
    "# all private, goods, or manufacturing.\n",
    "\n",
    "#trade_county[\"log_employment_nt\"] = np.log(trade_county[\"emp_all\"] - \n",
    "#                                          trade_county[\"emp_gds\"]).replace(-np.inf, np.nan)\n",
    "\n",
    "trade_county[\"const\"] = 1"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 66,
   "metadata": {},
   "outputs": [],
   "source": [
    "trade_county.reset_index(inplace = True)\n",
    "\n",
    "trade_county.rename({\"area_fips\": \"GEOFIPS\"},axis = 1, inplace = True)\n",
    "\n",
    "trade_county[\"state_fips\"] = trade_county[\"GEOFIPS\"].astype(str).str[0:2]\n",
    "\n",
    "trade_county[\"GEOFIPS\"] = trade_county[\"GEOFIPS\"].astype(int)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 67,
   "metadata": {},
   "outputs": [],
   "source": [
    "trade_county.set_index([\"GEOFIPS\", \"time\"], inplace = True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 68,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th>total_exp_pc</th>\n",
       "      <th>china_exp_pc</th>\n",
       "      <th>tariff</th>\n",
       "      <th>emplvl_2017</th>\n",
       "      <th>fips</th>\n",
       "      <th>total_employment</th>\n",
       "      <th>emp_rtl</th>\n",
       "      <th>emp_all</th>\n",
       "      <th>emp_gds</th>\n",
       "      <th>emp_ngds</th>\n",
       "      <th>rural_share</th>\n",
       "      <th>2010_population</th>\n",
       "      <th>2017_income</th>\n",
       "      <th>2017_population</th>\n",
       "      <th>log_tariff</th>\n",
       "      <th>log_exp_total</th>\n",
       "      <th>log_exp_china</th>\n",
       "      <th>log_employment</th>\n",
       "      <th>const</th>\n",
       "      <th>state_fips</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>GEOFIPS</th>\n",
       "      <th>time</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <td rowspan=\"5\" valign=\"top\">10001</td>\n",
       "      <td>2016-01-01</td>\n",
       "      <td>453.257185</td>\n",
       "      <td>47.280196</td>\n",
       "      <td>1.069532</td>\n",
       "      <td>2843.0</td>\n",
       "      <td>10001</td>\n",
       "      <td>29514.0</td>\n",
       "      <td>9269.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>38494.0</td>\n",
       "      <td>0.269694</td>\n",
       "      <td>162310.0</td>\n",
       "      <td>57647.0</td>\n",
       "      <td>173145.0</td>\n",
       "      <td>0.010639</td>\n",
       "      <td>6.116460</td>\n",
       "      <td>3.856092</td>\n",
       "      <td>9.134431</td>\n",
       "      <td>1</td>\n",
       "      <td>10</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>2016-02-01</td>\n",
       "      <td>471.930726</td>\n",
       "      <td>47.211522</td>\n",
       "      <td>1.069499</td>\n",
       "      <td>2843.0</td>\n",
       "      <td>10001</td>\n",
       "      <td>29514.0</td>\n",
       "      <td>9236.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>38646.0</td>\n",
       "      <td>0.269694</td>\n",
       "      <td>162310.0</td>\n",
       "      <td>57647.0</td>\n",
       "      <td>173145.0</td>\n",
       "      <td>0.010638</td>\n",
       "      <td>6.156832</td>\n",
       "      <td>3.854638</td>\n",
       "      <td>9.130864</td>\n",
       "      <td>1</td>\n",
       "      <td>10</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>2016-03-01</td>\n",
       "      <td>485.376760</td>\n",
       "      <td>35.078484</td>\n",
       "      <td>1.069500</td>\n",
       "      <td>2843.0</td>\n",
       "      <td>10001</td>\n",
       "      <td>29514.0</td>\n",
       "      <td>9342.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>38917.0</td>\n",
       "      <td>0.269694</td>\n",
       "      <td>162310.0</td>\n",
       "      <td>57647.0</td>\n",
       "      <td>173145.0</td>\n",
       "      <td>0.010638</td>\n",
       "      <td>6.184925</td>\n",
       "      <td>3.557588</td>\n",
       "      <td>9.142276</td>\n",
       "      <td>1</td>\n",
       "      <td>10</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>2016-04-01</td>\n",
       "      <td>460.259354</td>\n",
       "      <td>27.991526</td>\n",
       "      <td>1.069500</td>\n",
       "      <td>2843.0</td>\n",
       "      <td>10001</td>\n",
       "      <td>29514.0</td>\n",
       "      <td>9376.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>39719.0</td>\n",
       "      <td>0.269694</td>\n",
       "      <td>162310.0</td>\n",
       "      <td>57647.0</td>\n",
       "      <td>173145.0</td>\n",
       "      <td>0.010638</td>\n",
       "      <td>6.131790</td>\n",
       "      <td>3.331902</td>\n",
       "      <td>9.145909</td>\n",
       "      <td>1</td>\n",
       "      <td>10</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>2016-05-01</td>\n",
       "      <td>473.572638</td>\n",
       "      <td>28.235163</td>\n",
       "      <td>1.069499</td>\n",
       "      <td>2843.0</td>\n",
       "      <td>10001</td>\n",
       "      <td>29514.0</td>\n",
       "      <td>9265.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>40164.0</td>\n",
       "      <td>0.269694</td>\n",
       "      <td>162310.0</td>\n",
       "      <td>57647.0</td>\n",
       "      <td>173145.0</td>\n",
       "      <td>0.010638</td>\n",
       "      <td>6.160305</td>\n",
       "      <td>3.340568</td>\n",
       "      <td>9.133999</td>\n",
       "      <td>1</td>\n",
       "      <td>10</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                    total_exp_pc  china_exp_pc    tariff  emplvl_2017   fips  \\\n",
       "GEOFIPS time                                                                   \n",
       "10001   2016-01-01    453.257185     47.280196  1.069532       2843.0  10001   \n",
       "        2016-02-01    471.930726     47.211522  1.069499       2843.0  10001   \n",
       "        2016-03-01    485.376760     35.078484  1.069500       2843.0  10001   \n",
       "        2016-04-01    460.259354     27.991526  1.069500       2843.0  10001   \n",
       "        2016-05-01    473.572638     28.235163  1.069499       2843.0  10001   \n",
       "\n",
       "                    total_employment  emp_rtl  emp_all  emp_gds  emp_ngds  \\\n",
       "GEOFIPS time                                                                \n",
       "10001   2016-01-01           29514.0   9269.0      0.0      0.0   38494.0   \n",
       "        2016-02-01           29514.0   9236.0      0.0      0.0   38646.0   \n",
       "        2016-03-01           29514.0   9342.0      0.0      0.0   38917.0   \n",
       "        2016-04-01           29514.0   9376.0      0.0      0.0   39719.0   \n",
       "        2016-05-01           29514.0   9265.0      0.0      0.0   40164.0   \n",
       "\n",
       "                    rural_share  2010_population  2017_income  \\\n",
       "GEOFIPS time                                                    \n",
       "10001   2016-01-01     0.269694         162310.0      57647.0   \n",
       "        2016-02-01     0.269694         162310.0      57647.0   \n",
       "        2016-03-01     0.269694         162310.0      57647.0   \n",
       "        2016-04-01     0.269694         162310.0      57647.0   \n",
       "        2016-05-01     0.269694         162310.0      57647.0   \n",
       "\n",
       "                    2017_population  log_tariff  log_exp_total  log_exp_china  \\\n",
       "GEOFIPS time                                                                    \n",
       "10001   2016-01-01         173145.0    0.010639       6.116460       3.856092   \n",
       "        2016-02-01         173145.0    0.010638       6.156832       3.854638   \n",
       "        2016-03-01         173145.0    0.010638       6.184925       3.557588   \n",
       "        2016-04-01         173145.0    0.010638       6.131790       3.331902   \n",
       "        2016-05-01         173145.0    0.010638       6.160305       3.340568   \n",
       "\n",
       "                    log_employment  const state_fips  \n",
       "GEOFIPS time                                          \n",
       "10001   2016-01-01        9.134431      1         10  \n",
       "        2016-02-01        9.130864      1         10  \n",
       "        2016-03-01        9.142276      1         10  \n",
       "        2016-04-01        9.145909      1         10  \n",
       "        2016-05-01        9.133999      1         10  "
      ]
     },
     "execution_count": 68,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "trade_county.head()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Simple Cuts of Employment Data by Tariff Exposure\n",
    "\n",
    "Here is the strategy. First, compute the quantiles of tariff exposure for each county. Then compute year over year sales growth for each county. Note that since this is in growth rates, this takes out any county level \"fixed effect\" and removes any seasonal component. \n",
    "\n",
    "Then we will simply plot year over year employment growth, for the (mean or median) county in a particular part of the distribution of tariff exposure.\n",
    "\n",
    "This stuff is not reported in the paper, but is here to mimic the results for the autos.\n",
    "\n",
    "Note the stuff below will also replicate the summary statistics in the paper."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 69,
   "metadata": {},
   "outputs": [],
   "source": [
    "# First take growth rates\n",
    "\n",
    "# note , I'm a bit confused about why the sorting,\n",
    "# here is that because of some missing values, the resulting dateframe from the \n",
    "# first operation may be out of place, so we need to resort things to make sure that\n",
    "# the time difference is correct.\n",
    "trade_county.sort_values([\"GEOFIPS\", \"time\"], inplace = True)\n",
    "\n",
    "trade_county[\"tariff_change\"] = trade_county.groupby([\"GEOFIPS\"]).tariff.diff(12)\n",
    "\n",
    "trade_county.sort_values([\"GEOFIPS\", \"time\"], inplace = True)\n",
    "\n",
    "trade_county[\"log_tariff_change\"] = trade_county.groupby([\"GEOFIPS\"]).log_tariff.diff(12)\n",
    "\n",
    "trade_county.sort_values([\"GEOFIPS\", \"time\"], inplace = True)\n",
    "\n",
    "trade_county[\"employment_growth\"] = trade_county.groupby([\"GEOFIPS\"]).log_employment.diff(12)\n",
    "\n",
    "trade_county.sort_values([\"GEOFIPS\", \"time\"], inplace = True)\n",
    "\n",
    "#trade_county[\"nt_employment_growth\"] = trade_county.groupby([\"GEOFIPS\"]).log_employment_nt.diff(12)\n",
    "\n",
    "#trade_county.sort_values([\"GEOFIPS\", \"time\"], inplace = True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 70,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Then what we will do is look at the change in the taiff distribution...\n",
    "\n",
    "exposure = pd.qcut(trade_county.xs('2018-12-1', level=1).tariff_change, 4 ,labels = False)\n",
    "\n",
    "#median_exposure = pd.qcut(trade_county.xs('2018-12-1', level=1).alt_tariff, 5 ,labels = False)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 71,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "1.5077290482672434"
      ]
     },
     "execution_count": 71,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "most_exposed = exposure[exposure == 3].index.tolist()\n",
    "\n",
    "mid_group = exposure.isin([1,2])\n",
    "\n",
    "med_exposed = exposure[mid_group].index.tolist()\n",
    "\n",
    "least_exposed = exposure[exposure == 0].index.tolist()\n",
    "\n",
    "trade_county.xs('2018-12-1', level=1).tariff_change.mean()\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 72,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Tariff Change-Most: 3.79\n",
      "Tariff Change-Midl: 1.05\n",
      "Tariff Change-Lest: 0.15\n",
      "Tariff Change-Mean: 1.51\n"
     ]
    }
   ],
   "source": [
    "if driver_flag != True:\n",
    "    print(\"Tariff Change-Most:\", round(trade_county.loc[most_exposed].xs('2018-12-1', level=1).tariff_change.mean(),2))\n",
    "    print(\"Tariff Change-Midl:\", round(trade_county.loc[med_exposed].xs('2018-12-1', level=1).tariff_change.mean(),2))\n",
    "    print(\"Tariff Change-Lest:\",round(trade_county.loc[least_exposed].xs('2018-12-1', level=1).tariff_change.mean(),2))\n",
    "    print(\"Tariff Change-Mean:\", round(trade_county.xs('2018-12-1', level=1).tariff_change.mean(),2))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 73,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Chinese Exports 2017, (Most, Middle, Least, Mean)\n",
      "4034.0\n",
      "1289.0\n",
      "347.0\n",
      "1879.0\n"
     ]
    }
   ],
   "source": [
    "if driver_flag != True:\n",
    "    \n",
    "    print(\"Chinese Exports 2017, (Most, Middle, Least, Mean)\")\n",
    "\n",
    "    measure = \"china_exp_pc\"\n",
    "\n",
    "    print(round(trade_county.loc[most_exposed].groupby(\"time\").agg({measure :\"mean\"}).loc[\"2017\"].sum()[0],0))\n",
    "\n",
    "    print(round(trade_county.loc[med_exposed].groupby(\"time\").agg({measure :\"mean\"}).loc[\"2017\"].sum()[0],0))\n",
    "\n",
    "    print(round(trade_county.loc[least_exposed].groupby(\"time\").agg({measure :\"mean\"}).loc[\"2017\"].sum()[0],0))\n",
    "\n",
    "    print(round(trade_county.groupby(\"time\").agg({measure:\"mean\"}).loc[\"2017\"].sum()[0],0))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 74,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Annual Employment, (Most, Middle, Least, Mean)\n",
      "1492.0\n",
      "7262.0\n",
      "3557.0\n",
      "4896.0\n"
     ]
    }
   ],
   "source": [
    "if driver_flag != True:\n",
    "    \n",
    "    print(\"Annual Employment, (Most, Middle, Least, Mean)\")\n",
    "\n",
    "    print(round(trade_county.loc[most_exposed].groupby(\"time\").agg({emp_measure:\"mean\"}).loc[\"2017\"].mean()[0],0))\n",
    "\n",
    "    print(round(trade_county.loc[med_exposed].groupby(\"time\").agg({emp_measure:\"mean\"}).loc[\"2017\"].mean()[0],0))\n",
    "\n",
    "    print(round(trade_county.loc[least_exposed].groupby(\"time\").agg({emp_measure:\"mean\"}).loc[\"2017\"].mean()[0],0))\n",
    "\n",
    "    print(round(trade_county.groupby(\"time\").agg({emp_measure:\"mean\"}).loc[\"2017\"].mean()[0],0))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Now we will plot a comparision between those who are most exposed and those whoe are the least exposed (in terms of changes). This is basically the difference in difference by visualization."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 75,
   "metadata": {},
   "outputs": [],
   "source": [
    "empl_most = trade_county.loc[most_exposed].groupby(\"time\").agg({\"employment_growth\":\"mean\"})\n",
    "\n",
    "empl_least = trade_county.loc[least_exposed].groupby(\"time\").agg({\"employment_growth\":\"mean\"})"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 76,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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l+LFi8t9990nO3futD/fu3ev3H///RIaGioBAQFSpUoV+fLLLz3270p0dLRTedoOlktMTJT7779fwsPDJTAwUG677Tb54YcfnPLBdthdr169pFixYtK5c+dseexaX0aMGOHWLSdyqxPLli0Tb29vp3fmgw8+kODgYElKShIRXWf79esnzzzzjD1PBg8ebA9DJPd3VES/9927d5ewsDDx8/OT8uXLyzvvvONUrq51yrHsT548KYC8//778sADD0hgYKAMGjRIRES2bdsm9913n/0b1rVrV0lNTc0xPwoSx/pvuPEx5WW4CvK9rVvgje2b8boZOxADBgyQiIgIiYuLky1btkjnzp0lODg4zx2IqVOnyo8//ihJSUmyZs0aadGihTRt2tT+3NZAr1mzpixevFiSkpJk7969MmjQIKlSpYqkpqZKamqqnDlzxm2cjvdZWVly5513yn333Sdr1qyRXbt2ySuvvCLBwcFy8ODBHNN6//33S5UqVWT58uXy559/SocOHSQqKkrOnDkj58+fl23btgkgc+fOldTU1Gwncdvo2rWrREZGypw5cyQpKUl+/fVX+eyzz0RENxoDAwOlX79+sn37dvnhhx8kPDxcnn/++RzzTsR9ByIkJESGDx8uCQkJMnv2bClSpIh88cUXIiJy7NgxiYqKkldffdWedyIiffv2lXvvvTebvp06dcoxX1w7EB9//LGUKVNGvvnmG9m9e7fMnz9fwsPD7SeAL1iwQPz8/OTEiRN2P7/++qsUKVLErsewYcOkcuXKsmjRItm9e7fMmjVLAgMDZcGCBXY/uXUgLl26JKGhofLEE0/kqLeN6OhoKVGihLz33nuya9cumTRpkgDy22+/Ocm4diAiIyNlxowZsmvXLnnppZfEx8dHkpOTRUR3rCtVqiQ9evSQzZs3S3x8vPTu3VvKlSsnGRkZIiLSvn17ad26tWzatEl2794tixYtkkWLFnns35XDhw8LIFOmTJHU1FQ5fPiwiIhs2rRJPvjgA/nzzz9l165dMnbsWPHx8ZH4+Hin9AUHB8ubb74pu3btsndUHPM4NTVVqlSpIoMGDZLU1FQ5deqUWzd3XK5OiIgMHTpUoqKi5NixYxIfHy+BgYEyffp0+/PmzZtLUFCQDBw4UOLj42X27NkSEhIiEyZMsMvk9o6KiAwcOFBq164ta9askT179sjS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/Pzzz2zbto3HH388WwOmVatWzJo1i2XLltllHEf1ypUrh5+fH++//z67d+/mxx9/ZPjw4R7pEBMTQ0pKChs2bODo0aPZRubd0bp1a+688046duzIokWL2LNnD7///jsjRoxwOysBUKlSJTp27Ei/fv1YuXIlW7ZsoXv37oSEhPDII494pKstnIceeog+ffrYzyZYuXIlM2bMAODJJ5/k4MGDPPnkk8THx/Pjjz/y0ksvMXDgQAIDAwFtxrFixQrmz59PQkICzz//PPv27fNYBxsxMTGsXLmSAwcOcPToUbt7sWLF6NKlC4MGDaJZs2ZUqlQpT+GOHDmSt956i3feeYeEhAS2bt3K559/zuuvv+4k161bNz755BN+/PFHunfvbncPDg5m8ODBDB48mE8//ZTExEQ2bdrEhx9+aG9ge8K4ceMoV64cDRs2ZNq0aWzbto3ExERmzJhBvXr1SEtLy1O68kK3bt0IDw+nY8eOLF++nD179rBixQoGDRrErl27AG3CFBcXx+7du9m0aRNxcXH2hq4n/t0RExPDkiVLSEtL48SJEwBUrlyZb7/9lg0bNtjr7fXsPLnjcnXi0qVLdO/enebNm9OvXz8++eQT9u/fz6hRo5zCOXjwIM899xwJCQnMmTOHt99+m//7v/8DPHtHX331Vb777jt27dpFfHw88+bNo0KFCvj5+QH6WzV58mT++OMPNm7cSM+ePfH3v/xP0VNPPcVff/3Fww8/zJo1a9i9eze//PILffv25dSpU9cyKw0Gg+GGJr9mICYD5QGUUhWBGcBhoD3wZj7pYLgKxo8fT8uWLXnggQdo2bIlNWvWpFmzZk4yQ4cOpVWrVnTs2JG7776bJk2aULduXfvzsLAwPvvsM7777juqV6/OqFGjmDhxokfxP/jgg9x3333cddddhIWF8eWXX17Wj1KKhQsX0qpVK5544gmqVKnCQw89REJCAhERETn6mzZtGg0aNOD++++nQYMGnDlzhri4OAICAjzS1cbnn3/OI488wjPPPEPVqlXp2bOnfYo6MjKSRYsWsXHjRurUqcPjjz/Ov//9b8aNG+eU5gcffJDHH3+cO++8k6CgILv5T14YPXo0+/bto2LFitnWg/Tu3ZvMzEx69+6d53D79OnDp59+yowZM6hduzZNmzbl448/pnz58k5y3bt3JyEhgWLFitGmTRun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OhI9dSrRU6fWOH3v+++nd5kBzHWloKCAFStW8Pjjj3PNNdeU2nfLLbfw2muvsXDhQgDGjh3L9OnT+fDDD1m1ahU333yz/ctsly5dKCoqIjEx0T5DT0pKSo2f9LVo0YL27ds7fXzxgNikpKRS04OW1KZNmyrzOX78OD/99BPPP/88gwcPBmDHjh32Pp/Viefdd98t9YV/27ZtTqX19/ev8Nq7du1abgrVL7/8krCwMHx9fQHrC3O/fv3o168fCxcupFu3bqxZs4aYmBg8PT3LTQkbHBxMcHD1ZzD+8ssvufvuu7nuuusAyM7O5uDBg/ZKZUMUFRVFYGAgn376aakWoarExcWxadMm2rZt6/ALfWFhIV9//TVvvfUWI0aMAH5vVSipSZMmXH311Vx99dUsXryYwMBAPvnkEyZMmEBgYCC//fYb48aNq91FKqWUUrVwoSoQjh+HQjPgXF2dRETWA+vLbFtY4udcrLESjtJGVZBtfF3F56r++9//cuzYMe64445yU2VOnDiRF198kQULFuDm5oa3tzfXX389jz76KN9//32pGY46derE8OHDueuuu3jxxRfx9vZmzpw5NGvWrNQT8ylTpgCwcuXKOr0OX19fHnjgAR544AFEhCuvvJKcnBy2bduGm5sb06dPdyqfwMBAWrZsycsvv0x4eDiHDx9mzpw59gHOzrrrrrt46qmnmD17NnfffTe7du3iH//4R00urZT777+f3r17s3jxYiZNmsT27dt56qmn7DMFbdu2jY0bNzJ8+HBatWrFd999x6FDh+ja1Zr1OCoqiqSkJHbs2EFERAS+vr54eXnVKJaOHTvy9ttvM3z4cIqKiliwYIH9SXpD5e7uzvz58+1f3q+++mqys7P54osvmDVrVoXp7r33XlauXMnkyZO57777CAwMZP/+/axevZrly5fj7u5Ou3btWLFiBT169ODEiRPMmTOHpk2b2vN45513OHLkCAMGDCAgIICPPvqI/Px8OnfujLu7OwsXLuShhx6iWbNmDBs2jNzcXBITEzl58iT33Xffhfh4lFJKqfM7jasx5s/GmD9jrTz9YPF72+sJYBWw63zGoGrvlVdeYfDgwQ7n2R8/fjxJSUmlpua85ZZb+P7774mLi6NLly6ljn/99dcJCwtj0KBBjBkzhptvvpng4GC8vb3txyQnJ5frI19XlixZwuLF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\n",
      "text/plain": [
       "<Figure size 864x576 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "if driver_flag != True:\n",
    "    \n",
    "    fig, ax = plt.subplots(figsize = (12,8))\n",
    "\n",
    "    mike_blue = tuple(np.array([20, 64, 134]) / 255)\n",
    "\n",
    "    ax.plot((empl_most - empl_least), alpha = 0.95, color = mike_blue, linewidth = 4, \n",
    "        label = 'Difference between top and bottom\\nquartile of county level Chinese tariff exposure')\n",
    "\n",
    "#ax.plot(, alpha = 0.95, color = mike_blue , linewidth = 4, \n",
    "#        label = 'Bottom Quantile of Chinese Tariff Exposure Counties')\n",
    "\n",
    "    ax.set_ylim(-0.02,0.02)\n",
    "\n",
    "    ax.set_xlim(dt.datetime(2018,1,1),dt.datetime(2019,3,1))\n",
    "\n",
    "    ax.spines[\"right\"].set_visible(False)\n",
    "\n",
    "    ax.spines[\"top\"].set_visible(False)\n",
    "\n",
    "    ax.yaxis.grid(alpha= 0.5, linestyle= \"--\")\n",
    "\n",
    "    ax.set_ylabel(\"Employment, Year over Year Log Difference,\\nComparison Between High- and Low-Tariff Counties\", fontsize = 14)\n",
    "\n",
    "    ax.hlines((empl_most - empl_least).loc[:\"2018-07-01\"].mean().iloc[0],\n",
    "          dt.datetime(2018,1,1),dt.datetime(2018,7,6),\n",
    "           linewidth = 3, color = 'darkred', alpha =0.75, linestyle = \"--\")\n",
    "\n",
    "    ax.hlines((empl_most - empl_least).loc[\"2018-08-01\":].mean().iloc[0],\n",
    "          dt.datetime(2018,7,6),dt.datetime(2019,3,1),\n",
    "           linewidth = 3, color = 'darkred', alpha =0.75, linestyle = \"--\", label = \"Avg. Pre- and Post-Tariff Increase\")\n",
    "\n",
    "    ax.axvline(dt.datetime(2018,4,4), linewidth = 2, ls = \"--\", color = 'k', alpha =0.15)\n",
    "\n",
    "    ax.axvline(dt.datetime(2018,7,6), linewidth = 2, ls = \"--\", color = 'k', alpha =0.15)\n",
    "\n",
    "    ax.axvline(dt.datetime(2018,8,23), linewidth = 2, ls = \"--\", color = 'k', alpha =0.25)\n",
    "\n",
    "    ax.axvline(dt.datetime(2018,9,24), linewidth = 2, ls = \"--\", color = 'k', alpha =0.15)\n",
    "\n",
    "    ax.axvline(dt.datetime(2018,12,1), linewidth = 2, ls = \"--\", color = 'k', alpha =0.15)\n",
    "\n",
    "    ax.legend(loc = 0, frameon  = False, fontsize = 14)\n",
    "\n",
    "    ax.set_title(\"County-Level, Employment (Goods) Growth by Tariff Exposure\", fontsize = 16, loc= \"left\" )\n",
    "\n",
    "##############################################################################################\n",
    "\n",
    "    ax.annotate(\n",
    "    \"4/2018: US announces intention\\nto impose tariffs on China\", \n",
    "    xy=(dt.datetime(2018,4,3), 0.005), # This is where we point at...\n",
    "    xycoords=\"data\", # Not exactly sure about this\n",
    "    xytext=(dt.datetime(2018,9,3), 0.01), # This is about where the text is\n",
    "    horizontalalignment=\"left\", # How the text is alined\n",
    "    arrowprops={\n",
    "        \"arrowstyle\": \"-|>\", # This is stuff about the arrow\n",
    "        \"connectionstyle\": \"angle3,angleA=5,angleB=50\",\n",
    "        \"color\": \"black\",\n",
    "        \"alpha\": 0.55\n",
    "    },\n",
    "    fontsize=11,\n",
    "    )\n",
    "\n",
    "##############################################################################################\n",
    "\n",
    "    ax.annotate(\n",
    "    \"7/2018: China imposes first phase of\\nretaliatory tariffs\", \n",
    "    xy=(dt.datetime(2018,7,6), -0.01), # This is where we point at...\n",
    "    xycoords=\"data\", # Not exactly sure about this\n",
    "    xytext=(dt.datetime(2018,10,3), 0.0), # This is about where the text is\n",
    "    horizontalalignment=\"left\", # How the text is alined\n",
    "    arrowprops={\n",
    "        \"arrowstyle\": \"-|>\", # This is stuff about the arrow\n",
    "        \"connectionstyle\": \"angle3,angleA=5,angleB=50\",\n",
    "        \"color\": \"black\",\n",
    "        \"alpha\": 0.55\n",
    "    },\n",
    "    fontsize=11,\n",
    "    )\n",
    "\n",
    "###################################################################################\n",
    "\n",
    "    ax.annotate(\n",
    "    \"8-9/2018: China imposes second and \\nthird phase of retaliatory tariffs\", \n",
    "    xy=(dt.datetime(2018,8,23), -0.02), color='white',# This is where we point at...\n",
    "    xycoords=\"data\", # Not exactly sure about this\n",
    "    xytext=(dt.datetime(2018,11,3), -0.005), # This is about where the text is\n",
    "    horizontalalignment=\"left\", # How the text is alined\n",
    "    arrowprops={\n",
    "        \"arrowstyle\": \"-|>\", # This is stuff about the arrow\n",
    "        \"connectionstyle\": \"angle3,angleA=345,angleB=80\",\n",
    "        \"color\": \"black\",\n",
    "        \"alpha\": 0.55\n",
    "    },\n",
    "    fontsize=11,\n",
    "    )\n",
    "\n",
    "###################################################################################\n",
    "\n",
    "    ax.annotate(\n",
    "    \"8-9/2018: China imposes second and \\nthird phase of retaliatory tariffs\", \n",
    "    xy=(dt.datetime(2018,9,24), -0.02), # This is where we point at...\n",
    "    xycoords=\"data\", # Not exactly sure about this\n",
    "    xytext=(dt.datetime(2018,11,3), -0.005), # This is about where the text is\n",
    "    horizontalalignment=\"left\", # How the text is alined\n",
    "    arrowprops={\n",
    "        \"arrowstyle\": \"-|>\", # This is stuff about the arrow\n",
    "        \"connectionstyle\": \"angle3,angleA=345,angleB=286\",\n",
    "        \"color\": \"black\",\n",
    "        \"alpha\": 0.55\n",
    "    },\n",
    "    fontsize=11,\n",
    "    )\n",
    "\n",
    "##############################################################################################\n",
    "\n",
    "#plt.savefig(fig_path + \"\\\\simple_employment_county_all.pdf\", bbox_inches = \"tight\", dip = 3600)\n",
    "\n",
    "#plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Then this will do the tabular representation using stuff before and after the first phase of the tradewar."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 77,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "-0.0073 0.001 4707\n",
      "-0.0047 0.001 4491\n"
     ]
    }
   ],
   "source": [
    "idx = pd.IndexSlice\n",
    "\n",
    "me_mean = trade_county.loc[most_exposed].loc[idx[:,\"2018-01-01\":\"2018-06-01\"],:].employment_growth.mean()\n",
    "\n",
    "me_nobs = trade_county.loc[most_exposed].loc[idx[:,\"2018-01-01\":\"2018-06-01\"],:].employment_growth.notnull().sum()\n",
    "\n",
    "me_se = trade_county.loc[most_exposed].loc[idx[:,\"2018-01-01\":\"2018-06-01\"],:].employment_growth.std()/me_nobs**0.5\n",
    "\n",
    "\n",
    "le_mean = trade_county.loc[least_exposed].loc[idx[:,\"2018-01-01\":\"2018-06-01\"],:].employment_growth.mean()\n",
    "\n",
    "le_nobs = trade_county.loc[least_exposed].loc[idx[:,\"2018-01-01\":\"2018-06-01\"],:].employment_growth.notnull().sum()\n",
    "\n",
    "le_se = trade_county.loc[least_exposed].loc[idx[:,\"2018-01-01\":\"2018-06-01\"],:].employment_growth.std()/me_nobs**0.5\n",
    "\n",
    "if driver_flag != True:\n",
    "    print(round(me_mean,4), round(me_se,3), me_nobs)\n",
    "    print(round(le_mean,4), round(le_se,3), le_nobs)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 78,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "-0.0075 0.001 9369\n",
      "-0.0045 0.001 8904\n"
     ]
    }
   ],
   "source": [
    "idx = pd.IndexSlice\n",
    "\n",
    "me_mean = trade_county.loc[most_exposed].loc[idx[:,\"2018-07-01\":],:].employment_growth.mean()\n",
    "\n",
    "me_nobs = trade_county.loc[most_exposed].loc[idx[:,\"2018-07-01\":],:].employment_growth.notnull().sum()\n",
    "\n",
    "me_se = trade_county.loc[most_exposed].loc[idx[:,\"2018-07-01\":],:].employment_growth.std()/me_nobs**0.5\n",
    "\n",
    "\n",
    "le_mean = trade_county.loc[least_exposed].loc[idx[:,\"2018-07-01\":],:].employment_growth.mean()\n",
    "\n",
    "le_nobs = trade_county.loc[least_exposed].loc[idx[:,\"2018-07-01\":],:].employment_growth.notnull().sum()\n",
    "\n",
    "le_se = trade_county.loc[least_exposed].loc[idx[:,\"2018-07-01\":],:].employment_growth.std()/me_nobs**0.5\n",
    "\n",
    "if driver_flag != True:\n",
    "    print(round(me_mean,4), round(me_se,3), me_nobs)\n",
    "    print(round(le_mean,4), round(le_se,3), le_nobs)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Not discussed in the paper, but what this looks like is that both looked relativly the same before the start of it interms of employment growth. But after the first phase, the least exposed did really well (this is consistent with a rocking US economy) but those most exposed did relativly poorly. But growth here is still positive. "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Regression Analysis\n",
    "\n",
    "This will walk through the results using employment data. The first set are the main (weighted results). The next set are the unweighted results. Numbers may not exactly match up to what is in the paper as some rounding is occuring. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 79,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Index(['total_exp_pc', 'china_exp_pc', 'tariff', 'emplvl_2017', 'fips',\n",
       "       'total_employment', 'emp_rtl', 'emp_all', 'emp_gds', 'emp_ngds',\n",
       "       'rural_share', '2010_population', '2017_income', '2017_population',\n",
       "       'log_tariff', 'log_exp_total', 'log_exp_china', 'log_employment',\n",
       "       'const', 'state_fips', 'tariff_change', 'log_tariff_change',\n",
       "       'employment_growth'],\n",
       "      dtype='object')"
      ]
     },
     "execution_count": 79,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "trade_county.columns"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Weighted Results\n",
    "\n",
    "#### Change on Change, no time or fixed effects"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 80,
   "metadata": {},
   "outputs": [],
   "source": [
    "start = \"2018-01-01\"\n",
    "\n",
    "weighting_var = '2010_population'"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 81,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "**********************************************************************************\n",
      "Raw Regression Employment Growth on Tariffs\n",
      "\n",
      "18\n",
      "3252\n",
      "                          PanelOLS Estimation Summary                           \n",
      "================================================================================\n",
      "Dep. Variable:      employment_growth   R-squared:                        0.0022\n",
      "Estimator:                   PanelOLS   R-squared (Between):             -0.0026\n",
      "No. Observations:               55053   R-squared (Within):               0.0069\n",
      "Date:                Thu, Dec 26 2019   R-squared (Overall):              0.0022\n",
      "Time:                        10:33:08   Log-likelihood                 1.066e+05\n",
      "Cov. Estimator:             Clustered                                           \n",
      "                                        F-statistic:                      1292.3\n",
      "Entities:                        3082   P-value                           0.0000\n",
      "Avg Obs:                       17.863   Distribution:                 F(1,55051)\n",
      "Min Obs:                       3.0000                                           \n",
      "Max Obs:                       18.000   F-statistic (robust):             14.594\n",
      "                                        P-value                           0.0001\n",
      "Time periods:                      18   Distribution:                 F(1,55051)\n",
      "Avg Obs:                       3058.5                                           \n",
      "Min Obs:                       3048.0                                           \n",
      "Max Obs:                       3068.0                                           \n",
      "                                                                                \n",
      "                                 Parameter Estimates                                 \n",
      "=====================================================================================\n",
      "                   Parameter  Std. Err.     T-stat    P-value    Lower CI    Upper CI\n",
      "-------------------------------------------------------------------------------------\n",
      "const                -0.0054     0.0009    -6.0535     0.0000     -0.0072     -0.0037\n",
      "log_tariff_change    -0.2271     0.0594    -3.8202     0.0001     -0.3436     -0.1106\n",
      "=====================================================================================\n",
      "\n",
      "\n"
     ]
    }
   ],
   "source": [
    "print(\"\")\n",
    "print(\"**********************************************************************************\")\n",
    "print(\"Raw Regression Employment Growth on Tariffs\")\n",
    "print(\"\")\n",
    "\n",
    "all_vars = [\"const\", \"log_tariff_change\", 'employment_growth',\"2010_population\",'total_employment']\n",
    "\n",
    "dataset = trade_county[all_vars].loc[idx[:,start:\"2019-06-01\"],:]\n",
    "\n",
    "exog_vars = [\"const\",\"log_tariff_change\"]\n",
    "\n",
    "weights = dataset[weighting_var].to_frame()\n",
    "# I fought with this alot. the weights shape needs to exaclty match up\n",
    "# with the dataframe for which the estimation is done. So what I do is\n",
    "# slice as above, then let PanelOLS drop things when there are missing \n",
    "# observations\n",
    "\n",
    "weights.replace(to_replace = 0, value = 0.001,inplace = True)\n",
    "# Some countys because of there size and how the QCEW deals with stuff, there are is zero.\n",
    "# PanelOLS does not like 0 weight, so this the the work around. It does not matter. \n",
    "\n",
    "mod = PanelOLS(dataset.employment_growth, dataset[exog_vars], weights = weights)\n",
    "\n",
    "fe_res = mod.fit(cov_type='clustered', cluster_entity=True)\n",
    "\n",
    "print(fe_res)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Change on Change, now with just the time effect."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 82,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "**********************************************************************************\n",
      "Employment Growth on Tariff Change, Time fixed effcts\n",
      "\n",
      "18\n",
      "3252\n",
      "                          PanelOLS Estimation Summary                           \n",
      "================================================================================\n",
      "Dep. Variable:      employment_growth   R-squared:                        0.0001\n",
      "Estimator:                   PanelOLS   R-squared (Between):          -4.101e-05\n",
      "No. Observations:               55053   R-squared (Within):              -0.0029\n",
      "Date:                Thu, Dec 26 2019   R-squared (Overall):             -0.0015\n",
      "Time:                        10:33:08   Log-likelihood                 1.071e+05\n",
      "Cov. Estimator:             Clustered                                           \n",
      "                                        F-statistic:                      1195.3\n",
      "Entities:                        3082   P-value                           0.0000\n",
      "Avg Obs:                       17.863   Distribution:                 F(1,55034)\n",
      "Min Obs:                       3.0000                                           \n",
      "Max Obs:                       18.000   F-statistic (robust):             1.0543\n",
      "                                        P-value                           0.3045\n",
      "Time periods:                      18   Distribution:                 F(1,55034)\n",
      "Avg Obs:                       3058.5                                           \n",
      "Min Obs:                       3048.0                                           \n",
      "Max Obs:                       3068.0                                           \n",
      "                                                                                \n",
      "                                 Parameter Estimates                                 \n",
      "=====================================================================================\n",
      "                   Parameter  Std. Err.     T-stat    P-value    Lower CI    Upper CI\n",
      "-------------------------------------------------------------------------------------\n",
      "const                -0.0069     0.0009    -7.5710     0.0000     -0.0087     -0.0051\n",
      "log_tariff_change     0.0668     0.0650     1.0268     0.3045     -0.0607      0.1942\n",
      "=====================================================================================\n",
      "\n",
      "F-test for Poolability: 52.435\n",
      "P-value: 0.0000\n",
      "Distribution: F(17,55034)\n",
      "\n",
      "Included effects: Time\n"
     ]
    }
   ],
   "source": [
    "print(\"\")\n",
    "print(\"**********************************************************************************\")\n",
    "print(\"Employment Growth on Tariff Change, Time fixed effcts\")\n",
    "print(\"\")\n",
    "\n",
    "all_vars = [\"const\", \"log_tariff_change\", 'employment_growth',\"2010_population\",'total_employment']\n",
    "\n",
    "dataset = trade_county[all_vars].loc[idx[:,start:\"2019-06-01\"],:]\n",
    "\n",
    "exog_vars = [\"const\",\"log_tariff_change\"]\n",
    "\n",
    "weights = dataset[weighting_var].to_frame()\n",
    "# I fought with this alot. the weights shape needs to exaclty match up\n",
    "# with the dataframe for which the estimation is done. So what I do is\n",
    "# slice as above, then let PanelOLS drop things when there are missing \n",
    "# observations\n",
    "\n",
    "weights.replace(to_replace = 0, value = 0.001,inplace = True)\n",
    "# Some countys because of there size and how the QCEW deals with stuff, there are is zero.\n",
    "# PanelOLS does not like 0 weight, so this the the work around. It does not matter. \n",
    "\n",
    "mod = PanelOLS(dataset.employment_growth, dataset[exog_vars], weights = weights, time_effects = True)\n",
    "\n",
    "fe_res = mod.fit(cov_type='clustered', cluster_entity=True)\n",
    "\n",
    "print(fe_res)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Change on Change, time effects and county-level fixed effects"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 83,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "**********************************************************************************\n",
      "Employment Growth on Tariff Change, Time and County-level fixed effcts\n",
      "\n",
      "18\n",
      "3252\n",
      "                          PanelOLS Estimation Summary                           \n",
      "================================================================================\n",
      "Dep. Variable:      employment_growth   R-squared:                        0.0004\n",
      "Estimator:                   PanelOLS   R-squared (Between):             -0.0005\n",
      "No. Observations:               55053   R-squared (Within):              -0.0065\n",
      "Date:                Thu, Dec 26 2019   R-squared (Overall):             -0.0035\n",
      "Time:                        10:33:09   Log-likelihood                 1.263e+05\n",
      "Cov. Estimator:             Clustered                                           \n",
      "                                        F-statistic:                      2093.5\n",
      "Entities:                        3082   P-value                           0.0000\n",
      "Avg Obs:                       17.863   Distribution:                 F(1,51953)\n",
      "Min Obs:                       3.0000                                           \n",
      "Max Obs:                       18.000   F-statistic (robust):             2.8504\n",
      "                                        P-value                           0.0914\n",
      "Time periods:                      18   Distribution:                 F(1,51953)\n",
      "Avg Obs:                       3058.5                                           \n",
      "Min Obs:                       3048.0                                           \n",
      "Max Obs:                       3068.0                                           \n",
      "                                                                                \n",
      "                                 Parameter Estimates                                 \n",
      "=====================================================================================\n",
      "                   Parameter  Std. Err.     T-stat    P-value    Lower CI    Upper CI\n",
      "-------------------------------------------------------------------------------------\n",
      "const                -0.0073     0.0004    -17.641     0.0000     -0.0081     -0.0065\n",
      "log_tariff_change     0.1375     0.0814     1.6883     0.0914     -0.0221      0.2971\n",
      "=====================================================================================\n",
      "\n",
      "F-test for Poolability: 17.514\n",
      "P-value: 0.0000\n",
      "Distribution: F(3098,51953)\n",
      "\n",
      "Included effects: Entity, Time\n"
     ]
    }
   ],
   "source": [
    "print(\"\")\n",
    "print(\"**********************************************************************************\")\n",
    "print(\"Employment Growth on Tariff Change, Time and County-level fixed effcts\")\n",
    "print(\"\")\n",
    "\n",
    "all_vars = [\"const\", \"log_tariff_change\", 'employment_growth',\"2010_population\",'total_employment']\n",
    "\n",
    "dataset = trade_county[all_vars].loc[idx[:,start:\"2019-06-01\"],:]\n",
    "\n",
    "exog_vars = [\"const\",\"log_tariff_change\"]\n",
    "\n",
    "weights = dataset[weighting_var].to_frame()\n",
    "# I fought with this alot. the weights shape needs to exaclty match up\n",
    "# with the dataframe for which the estimation is done. So what I do is\n",
    "# slice as above, then let PanelOLS drop things when there are missing \n",
    "# observations\n",
    "\n",
    "weights.replace(to_replace = 0, value = 0.001,inplace = True)\n",
    "# Some countys because of there size and how the QCEW deals with stuff, there are is zero.\n",
    "# PanelOLS does not like 0 weight, so this the the work around. It does not matter. \n",
    "\n",
    "mod = PanelOLS(dataset.employment_growth, dataset[exog_vars], weights = weights, entity_effects=True, \n",
    "               time_effects = True)\n",
    "\n",
    "fe_res = mod.fit(cov_type='clustered', cluster_entity=True)\n",
    "\n",
    "print(fe_res)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Now controll for time-varying shocks that may be correlated with the tariff. So I will interact a county's goods producing share and rural share with time dummies. Which is what I do below."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 84,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.27251695676746807"
      ]
     },
     "execution_count": 84,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "trade_county[\"man_share\"] = trade_county[\"emp_gds\"] / trade_county[\"emp_all\"]\n",
    "\n",
    "trade_county[\"man_share\"] = trade_county[\"man_share\"].replace(np.inf, np.nan)\n",
    "\n",
    "trans = lambda df: df.iloc[0:11].mean()\n",
    "\n",
    "#trade_county.groupby([\"GEOFIPS\"]).log_tariff.transform(trans)\n",
    "\n",
    "trade_county[\"avg_man_share\"] = trade_county.groupby([\"GEOFIPS\"]).man_share.transform(trans)\n",
    "\n",
    "trade_county[\"avg_man_share\"].mean()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 85,
   "metadata": {},
   "outputs": [],
   "source": [
    "years = [18,19]\n",
    "\n",
    "quarters = [[1,2],[3,4],[5,6],[7,8],[9,10],[11,12]]\n",
    "\n",
    "#quarters = [[1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12]]\n",
    "\n",
    "rural_list = []\n",
    "\n",
    "man_list = []\n",
    "\n",
    "tariff_list = []\n",
    "\n",
    "count = 0\n",
    "\n",
    "event_study = pd.DataFrame([])\n",
    "\n",
    "for xxx in years:\n",
    "    \n",
    "    for yyy in quarters:\n",
    "        \n",
    "        if (xxx == 19) & (yyy[0] > 6):\n",
    "            break\n",
    "            \n",
    "        \n",
    "        year = \"20\" + str(xxx)\n",
    "        year = int(year)\n",
    "        \n",
    "        date_cond = ((trade_county.index.get_level_values(1).month.isin(yyy)) \n",
    "             & (trade_county.index.get_level_values(1).year == year ))\n",
    "        \n",
    "        name = \"M\" + str(yyy) + \"_\" + str(xxx)\n",
    "        \n",
    "        #print(name)\n",
    "        \n",
    "        if count == 0:\n",
    "            \n",
    "            event_study = pd.merge(trade_county.reset_index(),\n",
    "                                   pd.get_dummies(date_cond)[1].rename(name),\n",
    "                                   left_index = True, right_index= True)\n",
    "        else:\n",
    "            \n",
    "            event_study = pd.merge(event_study, \n",
    "                       pd.get_dummies(date_cond)[1].rename(name),\n",
    "                                   left_index = True, right_index= True)\n",
    "               \n",
    "        name_t = name + \"_t\"\n",
    "        \n",
    "        name_r = name + \"_r\"\n",
    "        \n",
    "        name_m = name + \"_m\"\n",
    "        \n",
    "        \n",
    "        # This will be the dummy variable on the leads\n",
    "\n",
    "        event_study[name_r] = event_study.rural_share.multiply(event_study[name], axis = 0)\n",
    "         # This will be the dummy variable on ineraction with rural share\n",
    "\n",
    "        event_study[name_m] = event_study.avg_man_share.multiply(event_study[name], axis = 0) \n",
    "        # This will be the dummy variable on ineraction with goods employment share\n",
    "        \n",
    "        count = count + 1\n",
    "        \n",
    "        tariff_list.append(name_t)\n",
    "        \n",
    "        man_list.append(name_m)\n",
    "        \n",
    "        rural_list.append(name_r)\n",
    "        \n",
    "        #print(count)\n",
    "        \n",
    "######################################################## \n",
    "        \n",
    "event_study.set_index([\"GEOFIPS\", \"time\"],inplace = True)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Now run the regression with these interaction terms. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 86,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "**********************************************************************************\n",
      "Employment Growth on Tariff Change, Interaction Specification\n",
      "\n",
      "18\n",
      "3252\n",
      "                          PanelOLS Estimation Summary                           \n",
      "================================================================================\n",
      "Dep. Variable:      employment_growth   R-squared:                        0.0048\n",
      "Estimator:                   PanelOLS   R-squared (Between):              0.0052\n",
      "No. Observations:               54927   R-squared (Within):              -0.0274\n",
      "Date:                Thu, Dec 26 2019   R-squared (Overall):             -0.0113\n",
      "Time:                        10:33:11   Log-likelihood                  1.07e+05\n",
      "Cov. Estimator:             Clustered                                           \n",
      "                                        F-statistic:                      76.828\n",
      "Entities:                        3075   P-value                           0.0000\n",
      "Avg Obs:                       17.862   Distribution:                F(19,54890)\n",
      "Min Obs:                       3.0000                                           \n",
      "Max Obs:                       18.000   F-statistic (robust):             6.1443\n",
      "                                        P-value                           0.0000\n",
      "Time periods:                      18   Distribution:                F(19,54890)\n",
      "Avg Obs:                       3051.5                                           \n",
      "Min Obs:                       3041.0                                           \n",
      "Max Obs:                       3061.0                                           \n",
      "                                                                                \n",
      "                                 Parameter Estimates                                 \n",
      "=====================================================================================\n",
      "                   Parameter  Std. Err.     T-stat    P-value    Lower CI    Upper CI\n",
      "-------------------------------------------------------------------------------------\n",
      "const                -0.0096     0.0016    -6.1815     0.0000     -0.0127     -0.0066\n",
      "log_tariff_change    -0.1975     0.0788    -2.5081     0.0121     -0.3519     -0.0432\n",
      "M[1, 2]_18_m          0.0015     0.0092     0.1653     0.8687     -0.0165      0.0196\n",
      "M[3, 4]_18_m          0.0092     0.0089     1.0265     0.3047     -0.0083      0.0266\n",
      "M[5, 6]_18_m          0.0155     0.0088     1.7467     0.0807     -0.0019      0.0328\n",
      "M[7, 8]_18_m          0.0193     0.0092     2.0919     0.0364      0.0012      0.0374\n",
      "M[9, 10]_18_m         0.0249     0.0102     2.4282     0.0152      0.0048      0.0449\n",
      "M[11, 12]_18_m        0.0331     0.0111     2.9764     0.0029      0.0113      0.0549\n",
      "M[1, 2]_19_m          0.0291     0.0105     2.7787     0.0055      0.0086      0.0496\n",
      "M[3, 4]_19_m          0.0248     0.0104     2.3840     0.0171      0.0044      0.0451\n",
      "M[5, 6]_19_m          0.0289     0.0104     2.7806     0.0054      0.0085      0.0492\n",
      "M[1, 2]_18_r         -0.0096     0.0038    -2.5430     0.0110     -0.0170     -0.0022\n",
      "M[3, 4]_18_r         -0.0045     0.0036    -1.2564     0.2090     -0.0115      0.0025\n",
      "M[5, 6]_18_r         -0.0008     0.0033    -0.2405     0.8100     -0.0074      0.0058\n",
      "M[7, 8]_18_r         -0.0013     0.0033    -0.3975     0.6910     -0.0078      0.0052\n",
      "M[9, 10]_18_r        -0.0027     0.0034    -0.7915     0.4287     -0.0093      0.0040\n",
      "M[11, 12]_18_r        0.0052     0.0034     1.4975     0.1343     -0.0016      0.0119\n",
      "M[1, 2]_19_r          0.0072     0.0032     2.2577     0.0240      0.0010      0.0135\n",
      "M[3, 4]_19_r          0.0064     0.0033     1.9365     0.0528  -7.763e-05      0.0129\n",
      "M[5, 6]_19_r          0.0063     0.0034     1.8638     0.0624     -0.0003      0.0128\n",
      "=====================================================================================\n",
      "\n",
      "F-test for Poolability: 25.058\n",
      "P-value: 0.0000\n",
      "Distribution: F(17,54890)\n",
      "\n",
      "Included effects: Time\n"
     ]
    }
   ],
   "source": [
    "print(\"\")\n",
    "print(\"**********************************************************************************\")\n",
    "print(\"Employment Growth on Tariff Change, Interaction Specification\")\n",
    "print(\"\")\n",
    "\n",
    "all_vars = [\"const\", \"log_tariff_change\", 'employment_growth',\"2010_population\",'total_employment',\n",
    "           \"rural_share\", \"man_share\"]\n",
    "\n",
    "all_vars.extend(man_list)\n",
    "\n",
    "all_vars.extend(rural_list)\n",
    "\n",
    "dataset = event_study[all_vars].loc[idx[:,\"2018-01-01\":\"2019-6-01\"],:]\n",
    "\n",
    "exog_vars = [\"const\",\"log_tariff_change\"]\n",
    "\n",
    "weights = dataset[\"2010_population\"].to_frame()\n",
    "# I fought with this alot. the weights shape needs to exaclty match up\n",
    "# with the dataframe for which the estimation is done. So what I do is\n",
    "# slice as above, then let PanelOLS drop things when there are missing \n",
    "# observations\n",
    "\n",
    "weights.replace(to_replace = 0, value = 0.001,inplace = True)\n",
    "# Some countys because of there size and how the QCEW deals with stuff, there are is zero.\n",
    "# PanelOLS does not like 0 weight, so this the the work around. It does not matter. \n",
    "\n",
    "exog_vars.extend(man_list)\n",
    "\n",
    "exog_vars.extend(rural_list)\n",
    "\n",
    "mod = PanelOLS(dataset.employment_growth, dataset[exog_vars],weights = weights,  time_effects = True)\n",
    "\n",
    "fe_res = mod.fit(cov_type='clustered', cluster_entity=True)\n",
    "\n",
    "print(fe_res)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 87,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "-0.1975151887059971"
      ]
     },
     "execution_count": 87,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "fe_res.params.log_tariff_change"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "**Aggregate Effects** This provides a simple calcuation for the aggregate outcomes. The consumption number only makes sense with retail employment as it exploits a unitary elasticity of retail employment to PCE."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 88,
   "metadata": {},
   "outputs": [],
   "source": [
    "def missing_jobs(df):\n",
    "    \n",
    "    foo_df = pd.DataFrame([])\n",
    "    \n",
    "    foo_df[\"g_cft\"] = df.employment_growth - (fe_res.params.log_tariff_change)*df.log_tariff_change\n",
    "    # compute the counterfactual change in growth...\n",
    "\n",
    "    foo_df[\"f_log_value\"] = df.log_employment - df.employment_growth\n",
    "    # this is just so we can line stuff up, e.g. in 2018-12 it will line up\n",
    "    # the 2017-12 value (seen in the data)\n",
    "\n",
    "    foo_df[\"log_value_cft\"] = foo_df.f_log_value + foo_df.g_cft\n",
    "    # This is the counterfactual car value. Take the counterfactual growth rate\n",
    "    # then add it to the previous years log_vale (hence the f_log_value)\n",
    "\n",
    "    foo_df[\"missing_jobs\"] = np.exp(foo_df.log_value_cft) - np.exp(df.log_employment)\n",
    "    # The missing cars take the exp of log value and differences it.\n",
    "    \n",
    "    idx = pd.IndexSlice\n",
    "    \n",
    "    # Jobs are a stock, not a flow. So for each period we come up\n",
    "    # with difference in jobs, then to figure out the change in the flow, I will difference,\n",
    "    # and then sum across stuff.\n",
    "\n",
    "    return foo_df.loc[idx[:,\"2018-01-01\":\"2019-07-01\"],:].missing_jobs.diff(1).sum()\n",
    "    # "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 89,
   "metadata": {},
   "outputs": [],
   "source": [
    "grp = trade_county[[\"log_employment\", \"employment_growth\", \"log_tariff_change\"]].groupby([\"GEOFIPS\"])\n",
    "\n",
    "ms_jobs = grp.apply(missing_jobs)\n",
    "\n",
    "emp_cnty = trade_county[\"total_employment\"].groupby([\"GEOFIPS\"]).mean()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 90,
   "metadata": {},
   "outputs": [],
   "source": [
    "test = pd.concat([ms_jobs, emp_cnty], axis = 1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 91,
   "metadata": {},
   "outputs": [],
   "source": [
    "test.columns = [\"missing_jobs\", \"2017_emp\"]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 92,
   "metadata": {},
   "outputs": [],
   "source": [
    "test[\"frac_lost\"] = test.missing_jobs / test[\"2017_emp\"]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 93,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "missing_jobs       4.956731\n",
       "2017_emp        5510.494000\n",
       "frac_lost          0.001737\n",
       "dtype: float64"
      ]
     },
     "execution_count": 93,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "test.sort_values(by = [\"frac_lost\"], ascending = False).iloc[0:1000].mean()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 94,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "GEOFIPS\n",
       "1001     -0.177440\n",
       "1003     18.840637\n",
       "1005      3.613286\n",
       "1007      1.907242\n",
       "1009      1.369746\n",
       "           ...    \n",
       "72113     9.013385\n",
       "72115     0.962300\n",
       "72117     0.194139\n",
       "72119     2.072020\n",
       "72121     7.092882\n",
       "Length: 3252, dtype: float64"
      ]
     },
     "execution_count": 94,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "ms_jobs"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 95,
   "metadata": {},
   "outputs": [],
   "source": [
    "ms_jobs = ms_jobs.to_frame(name = \"lost_jobs\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 96,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "**********************************************************************************\n",
      "Aggregate Effects\n",
      "\n",
      "Total Lost Jobs 22498.6\n"
     ]
    }
   ],
   "source": [
    "print(\"\")\n",
    "print(\"**********************************************************************************\")\n",
    "print(\"Aggregate Effects\")\n",
    "print(\"\")\n",
    "print(\"Total Lost Jobs\", round(ms_jobs.sum()[0],1))\n",
    "# This should be something like 25000 retail jobs lost"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 101,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>lost_jobs</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>GEOFIPS</th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <td>1001</td>\n",
       "      <td>-0.177440</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1003</td>\n",
       "      <td>18.840637</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1005</td>\n",
       "      <td>3.613286</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1007</td>\n",
       "      <td>1.907242</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1009</td>\n",
       "      <td>1.369746</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1011</td>\n",
       "      <td>0.476707</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1013</td>\n",
       "      <td>0.707260</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1015</td>\n",
       "      <td>8.594741</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1017</td>\n",
       "      <td>-0.028080</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1019</td>\n",
       "      <td>3.182374</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1021</td>\n",
       "      <td>4.140046</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1023</td>\n",
       "      <td>1.420197</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1025</td>\n",
       "      <td>5.917647</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1027</td>\n",
       "      <td>3.261505</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1029</td>\n",
       "      <td>0.264646</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1031</td>\n",
       "      <td>7.765484</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1033</td>\n",
       "      <td>1.703878</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1035</td>\n",
       "      <td>0.584970</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1037</td>\n",
       "      <td>0.554616</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1039</td>\n",
       "      <td>0.375379</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "         lost_jobs\n",
       "GEOFIPS           \n",
       "1001     -0.177440\n",
       "1003     18.840637\n",
       "1005      3.613286\n",
       "1007      1.907242\n",
       "1009      1.369746\n",
       "1011      0.476707\n",
       "1013      0.707260\n",
       "1015      8.594741\n",
       "1017     -0.028080\n",
       "1019      3.182374\n",
       "1021      4.140046\n",
       "1023      1.420197\n",
       "1025      5.917647\n",
       "1027      3.261505\n",
       "1029      0.264646\n",
       "1031      7.765484\n",
       "1033      1.703878\n",
       "1035      0.584970\n",
       "1037      0.554616\n",
       "1039      0.375379"
      ]
     },
     "execution_count": 101,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "ms_jobs.head(20)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "ms_jobs.to_csv(file_path + \"\\\\data\\\\lost_jobs.csv\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 127,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Total Consumption, Billions 19.8\n"
     ]
    }
   ],
   "source": [
    "PCE = 14000000000000\n",
    "\n",
    "total_cost = PCE*(ms_jobs.sum()/ \n",
    "                (np.exp(trade_county[\"log_employment\"].xs('2017-06-1', level=1)).sum()))\n",
    "\n",
    "clost = total_cost\n",
    "\n",
    "\n",
    "if emp_measure == \"emp_rtl\":\n",
    "\n",
    "    print(\"Total Consumption Loss, Billions\", round(clost/1000000000,1)[0])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 124,
   "metadata": {},
   "outputs": [],
   "source": [
    "# PCE is about 14,000 billion. (14 trillion)\n",
    "# Then we will mulitpliy by the percent of retail jobs lost \n",
    "# the same as percent of PCE lost (under a one for one assumption)\n",
    "# this tells us the lost consumption for that group. Then divide through\n",
    "# and we get reduction in consumption per group\n",
    "\n",
    "PCE = 14000000000000\n",
    "\n",
    "group = most_exposed\n",
    "\n",
    "total_cost = PCE*(ms_jobs.loc[group].sum()/ \n",
    "                (np.exp(trade_county[\"log_employment\"].xs('2017-06-1', level=1)).sum()))\n",
    "\n",
    "clost_most = total_cost / trade_county[\"total_employment\"].loc[group].xs('2017-06-1', level=1).sum()\n",
    "\n",
    "group = least_exposed\n",
    "\n",
    "total_cost = PCE*(ms_jobs.loc[group].sum()/ \n",
    "                (np.exp(trade_county[\"log_employment\"].xs('2017-06-1', level=1)).sum()))\n",
    "\n",
    "clost_least = total_cost / trade_county[\"total_employment\"].loc[group].xs('2017-06-1', level=1).sum()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 125,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Consumption Loss Per Worker, Most Exposed: lost_jobs    629.515\n",
      "dtype: float64\n",
      "Consumption Loss Per Worker, Least Exposed: lost_jobs    46.849\n",
      "dtype: float64\n"
     ]
    }
   ],
   "source": [
    "if emp_measure == \"emp_rtl\":\n",
    "\n",
    "    print(\"Consumption Loss Per Worker, Most Exposed:\", round(clost_most,3))\n",
    "    print(\"Consumption Loss Per Worker, Least Exposed:\", round(clost_least,3))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Unweigted resuts\n",
    "\n",
    "#### Change on Change, no fixed effects or time effects"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "                          PanelOLS Estimation Summary                           \n",
      "================================================================================\n",
      "Dep. Variable:      employment_growth   R-squared:                     2.116e-06\n",
      "Estimator:                   PanelOLS   R-squared (Between):             -0.0002\n",
      "No. Observations:               57858   R-squared (Within):            1.549e-05\n",
      "Date:                Thu, Dec 05 2019   R-squared (Overall):           2.116e-06\n",
      "Time:                        12:18:23   Log-likelihood                 7.898e+04\n",
      "Cov. Estimator:             Clustered                                           \n",
      "                                        F-statistic:                      0.1224\n",
      "Entities:                        3225   P-value                           0.7264\n",
      "Avg Obs:                       17.940   Distribution:                 F(1,57856)\n",
      "Min Obs:                       3.0000                                           \n",
      "Max Obs:                       18.000   F-statistic (robust):             0.0081\n",
      "                                        P-value                           0.9284\n",
      "Time periods:                      18   Distribution:                 F(1,57856)\n",
      "Avg Obs:                       3214.3                                           \n",
      "Min Obs:                       3209.0                                           \n",
      "Max Obs:                       3219.0                                           \n",
      "                                                                                \n",
      "                                 Parameter Estimates                                 \n",
      "=====================================================================================\n",
      "                   Parameter  Std. Err.     T-stat    P-value    Lower CI    Upper CI\n",
      "-------------------------------------------------------------------------------------\n",
      "const                 0.0107     0.0009     11.965     0.0000      0.0090      0.0125\n",
      "log_tariff_change     0.0061     0.0680     0.0898     0.9284     -0.1273      0.1395\n",
      "=====================================================================================\n",
      "\n",
      "\n"
     ]
    }
   ],
   "source": [
    "all_vars = [\"const\", \"log_tariff_change\", 'employment_growth']\n",
    "\n",
    "dataset = trade_county[all_vars].loc[idx[:,start:\"2019-06-01\"],:]\n",
    "\n",
    "exog_vars = [\"const\",\"log_tariff_change\"]\n",
    "\n",
    "mod = PanelOLS(dataset.employment_growth, dataset[exog_vars])\n",
    "\n",
    "fe_res = mod.fit(cov_type='clustered', cluster_entity=True)\n",
    "\n",
    "if driver_flag != True:\n",
    "\n",
    "    print(fe_res)\n",
    "\n",
    "#df = pd.concat([dataset.employment_growth, fe_res.fitted_values],1).dropna()\n",
    "#print(df.corr().iloc[0,1] ** 2)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Change on Change, time effects"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "                          PanelOLS Estimation Summary                           \n",
      "================================================================================\n",
      "Dep. Variable:      employment_growth   R-squared:                     1.736e-06\n",
      "Estimator:                   PanelOLS   R-squared (Between):             -0.0001\n",
      "No. Observations:               57858   R-squared (Within):           -1.991e-05\n",
      "Date:                Thu, Dec 05 2019   R-squared (Overall):          -6.312e-06\n",
      "Time:                        12:19:00   Log-likelihood                 7.901e+04\n",
      "Cov. Estimator:             Clustered                                           \n",
      "                                        F-statistic:                      0.1004\n",
      "Entities:                        3225   P-value                           0.7513\n",
      "Avg Obs:                       17.940   Distribution:                 F(1,57839)\n",
      "Min Obs:                       3.0000                                           \n",
      "Max Obs:                       18.000   F-statistic (robust):             0.0057\n",
      "                                        P-value                           0.9396\n",
      "Time periods:                      18   Distribution:                 F(1,57839)\n",
      "Avg Obs:                       3214.3                                           \n",
      "Min Obs:                       3209.0                                           \n",
      "Max Obs:                       3219.0                                           \n",
      "                                                                                \n",
      "                                 Parameter Estimates                                 \n",
      "=====================================================================================\n",
      "                   Parameter  Std. Err.     T-stat    P-value    Lower CI    Upper CI\n",
      "-------------------------------------------------------------------------------------\n",
      "const                 0.0108     0.0010     11.376     0.0000      0.0089      0.0127\n",
      "log_tariff_change    -0.0061     0.0804    -0.0758     0.9396     -0.1636      0.1514\n",
      "=====================================================================================\n",
      "\n",
      "F-test for Poolability: 3.1289\n",
      "P-value: 0.0000\n",
      "Distribution: F(17,57839)\n",
      "\n",
      "Included effects: Time\n"
     ]
    }
   ],
   "source": [
    "all_vars = [\"const\", \"log_tariff_change\", 'employment_growth']\n",
    "\n",
    "dataset = trade_county[all_vars].loc[idx[:,start:\"2019-06-01\"],:]\n",
    "\n",
    "exog_vars = [\"const\",\"log_tariff_change\"]\n",
    "\n",
    "mod = PanelOLS(dataset.employment_growth, dataset[exog_vars], time_effects = True)\n",
    "\n",
    "fe_res = mod.fit(cov_type='clustered', cluster_entity=True)\n",
    "\n",
    "if driver_flag != True:\n",
    "\n",
    "    print(fe_res)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Change on Change, time and county-level fixed effects"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 36,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "                          PanelOLS Estimation Summary                           \n",
      "================================================================================\n",
      "Dep. Variable:      employment_growth   R-squared:                     7.483e-06\n",
      "Estimator:                   PanelOLS   R-squared (Between):             -0.0002\n",
      "No. Observations:               57858   R-squared (Within):             2.88e-05\n",
      "Date:                Thu, Dec 05 2019   R-squared (Overall):           -1.39e-06\n",
      "Time:                        12:19:01   Log-likelihood                 1.027e+05\n",
      "Cov. Estimator:             Clustered                                           \n",
      "                                        F-statistic:                      0.4087\n",
      "Entities:                        3225   P-value                           0.5227\n",
      "Avg Obs:                       17.940   Distribution:                 F(1,54615)\n",
      "Min Obs:                       3.0000                                           \n",
      "Max Obs:                       18.000   F-statistic (robust):             0.0229\n",
      "                                        P-value                           0.8798\n",
      "Time periods:                      18   Distribution:                 F(1,54615)\n",
      "Avg Obs:                       3214.3                                           \n",
      "Min Obs:                       3209.0                                           \n",
      "Max Obs:                       3219.0                                           \n",
      "                                                                                \n",
      "                                 Parameter Estimates                                 \n",
      "=====================================================================================\n",
      "                   Parameter  Std. Err.     T-stat    P-value    Lower CI    Upper CI\n",
      "-------------------------------------------------------------------------------------\n",
      "const                 0.0106     0.0008     13.746     0.0000      0.0091      0.0122\n",
      "log_tariff_change     0.0140     0.0924     0.1513     0.8798     -0.1672      0.1951\n",
      "=====================================================================================\n",
      "\n",
      "F-test for Poolability: 21.372\n",
      "P-value: 0.0000\n",
      "Distribution: F(3241,54615)\n",
      "\n",
      "Included effects: Entity, Time\n"
     ]
    }
   ],
   "source": [
    "all_vars = [\"const\", \"log_tariff_change\", 'employment_growth']\n",
    "\n",
    "dataset = trade_county[all_vars].loc[idx[:,start:\"2019-06-01\"],:]\n",
    "\n",
    "exog_vars = [\"const\",\"log_tariff_change\"]\n",
    "\n",
    "mod = PanelOLS(dataset.employment_growth, dataset[exog_vars], entity_effects=True, time_effects = True)\n",
    "\n",
    "fe_res = mod.fit(cov_type='clustered', cluster_entity=True)\n",
    "\n",
    "if driver_flag != True:\n",
    "\n",
    "    print(fe_res)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "This is the most interesting one. Here things go to zero and there is no effect. What I think the weighting is really doing is variance reduction rather than some issue about means. So there are a bunch of small county's with employment patterns all over the place. By weighting on county size, this reduces the impact those guys have and, hence, you get the different result. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 37,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.7644"
      ]
     },
     "execution_count": 37,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "0.21*(3.79-0.15)"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.3"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
